home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / PLUS4 / plus4disk2.d64 / ch8.01 creat < prev    next >
Text File  |  2009-01-03  |  7KB  |  77 lines

  1. Ç*NB"1:CH8.01  CREAT"
  2. Ç*SP0:LM8:RM62:PL66:PG59
  3. Ç*VP1:HL8:HR72:HD0:├16/+4: ├╥┼┴╘╒╥┼                    ,,╙ECTION XX
  4. Ç*HS2:------------------------------------,,----------
  5. Ç*FT0:-----------------------,,----------
  6. Ç*FS2:(C) 1984 ┼LIZABETH ─EAL,,         Ç#
  7. ╙ECTION
  8. Ç*LN2:CN1;╒╬╙├╥┴═┬╠╔╬╟ ╫╧╥─╙Ç*LN2:CN0
  9.      ╘HIS GAME LETS YOU TO UNSCRAMBLE SCRAMBLED WORDS. ╔T WON'T MAKE THE BEST-GAMES LIST, BUT IT WILL PERMIT YOU TO THINK ABOUT WHAT GOES INTO EVEN THE SIMPLEST GAME IN TERMS OF ITS CONTENT, USER FRIENDLINESS (OR LACK THEREOF) AND ITS LOGIC. ╫HILE THIS GAME IS NOW PLAYABLE, IT IS ALSO A BUILDING BLOCK TO A MORE ELABORATE DESIGN. ┘OU'LL SEE SUGGESTIONS FOR IMPROVEMENTS.
  10.  
  11.      ╘HE GAME ILLUSTRATES SIMPLE ANIMATION USING THE ╨╥╔╬╘ AND ├╚┴╥ COMMANDS, AND SHOWS HOW TO INTERACT WITH THE PERSON PLAYING THE GAME.
  12.  
  13.      ╘HE TITLE OF THE PROGRAM IS ├╥┼┴╘╒╥┼. ╘HAT'S BECAUSE YOU USE THE CREATURE TO PICK THE LETTERS TO MAKE A WORD.
  14.  
  15. // PIC: CREAT //
  16.  
  17. // PRG: CREATURE //
  18.  
  19. Ç*FP19
  20. ***  ╓┴╥╔┴┬╠┼╙  ***
  21.  
  22. ═1$,═2$ CREATURE
  23. ╚,╫  CREATURE'S HEIGHT,WIDTH
  24.      DEFINED BUT NOT USED
  25. ├,╥  COLUMN,ROW WHERE CREATURE GOES
  26. ╨├   REMEMBER PREVIOUS COLUMN
  27. ╠├,╥├ LEFT,RIGHT LIMITS OF CREATURE'S
  28.      MOTIONS
  29. ─    DISTANCE FROM CREATURE TO WORD
  30. ╫$() WORDS
  31. ╘$   ONE WORD AT A TIME
  32. ╓$   SCRAMBLED WORD
  33. ├$   ONE LETTER
  34. ┴$   COLLECTS ANSWER TO MATCH ╘$
  35. ╠╬   NUMBER OF LETTERS IN WORD
  36. ╥%   RANDOM LETTERS
  37. ╚$   KEEPS TRACK OF WHICH LETTERS ARE MOVED
  38. ╔$   KEYBOARD INPUT
  39. ┴╓   SAME THING, ┴╙├╔╔ VALUE
  40. ╠╓   WILL TEST LEFT/RIGHT CURSORS
  41.  
  42. ***  ╔╬╙╘╥╒├╘╔╧╬╙  ***
  43.  
  44.      ╘HE GRAPHIC CHARACTERS NEEDED ARE CLEAR-SCREEN IN LINE 400 AND SOME CHARACTERS FOR THE LOVELY CREATURE. ╘HEY ARE SPELLED OUT IN THE FIRST TWO LINES OF THE PROGRAM. ├┬═ IS ABBREVIATION FOR THE ├OMMODORE-LOGO KEY.  ╔T REALLY MAKES NO DIFFERENCE WHAT YOU PUT THERE SO LONG AS THE CREATURE IS NOT WIDER THAN 5 CHARACTERS AND NOT TALLER THAN TWO, AND SO LONG AS THE CREATURE HAS SPACES ON ITS SIDES IN ADDITION TO ITS 5-CHARACTER WIDTH.
  45.  
  46.      ╘HE CREATURE IS MOVED BY THE LEFT AND RIGHT CURSOR KEYS. ╘O PICK A LETTER PRESS THE "1" KEY. (╘HE EXCLAMATION POINT CAN REMIND YOU OF THE UPWARD SHOOTING). ╫HEN "1" IS PRESSED A GENUINE ARROW SHOOTS OUT FROM THE CREATURE'S HEAD. ╔T IS A HEAD, YOU'VE GOT TO BELIEVE IT.
  47.  
  48.      ╘HE ARROW DELIVERS THE LETTER TO THE NEXT AVAILABLE POSITION IN THE WORD YOU ARE CREATING ON TOP OF THE SCREEN. ╘O  GIVE UP ON A WORD PRESS ╟. ╘O QUIT ALTOGETHER, PRESS ╤.
  49.  
  50.      ╘HE LIST OF WORDS IS IN THE ─┴╘┴ LINES. ╔T CAN BE CHANGED OR EXPANDED BY WHATEVER WORDS YOU WISH TO USE. ╔T SHOULD ALSO BE SOMEHOW SCRAMBLED UP, IF YOU DON'T WANT ANYONE TO KNOW YOUR LIST OF WORDS.
  51.  
  52.      ╘HE CHOICE OF WORDS IS A MATTER TO THINK ABOUT. ╘HERE IS ONE WORD IN MY LIST WHICH IS QUITE ANNOYING - ANOTHER WORD CAN BE MADE FROM IT, YET THE COMPUTER CONSIDERS ANY WORD OTHER THAN THE ONE ON THE LIST AS BEING WRONG. ┘OU CAN TRY EXPLAINING TO THE COMPUTER THAT YOU HAVE JUST BUILT A VALID ┼NGLISH WORD, BUT ╔ HAVEN'T HAD MUCH LUCK DOING THAT. ├OMPUTERS ARE STUBBORN AND FAIRLY STUPID. ╔F YOU SPOT THAT BAD WORD, TAKE IT OUT!
  53.  
  54. ***  ├╧─╔╬╟ ─┼╘┴╔╠╙  ***
  55.  
  56.      ╘HE WORDS ARE COLLECTED FROM THE ─┴╘┴ LINES INTO AN ARRAY ╫$(*) IN LINES 140-150. ╥ANDOMLY, THE WORDS ARE TAKEN, ONE BY ONE, FROM THE LIST, SEE LINE 170. ╘HE LETTERS IN THE WORD ARE SCRAMBLED INTO A RANDOM ORDER BY THE CODE IN LINES 180-200. ╫E MAKE SURE EACH LETTER IS PICKED ONLY ONCE. ╠INE 190 TAKES CARE OR THIS: WHEN A LETTER IS PICKED AN ASTERISK IS PUT IN A CHARACTER STRING ╚$ TO INDICATE THAT THIS LETTER IS NO LONGER AVAILABLE. ╠ETTERS ARE COLLECTED IN ╓$. ╫HEN ALL CHARACTERS HAVE BEEN DONE, ╓$ IS THE PATTERN DELIVERED FOR UNSCRAMBLING.
  57.  
  58.      ╘HE INTERACTION WITH THE USER IS CODED IN LINES 220-290. ╠INE 210 PLACES THE TWO LINES OF THE CREATURE ON THE SCREEN. ╙UBSEQUENT LINES CHECK THE KEYBOARD. ╘HE CURSOR KEYS (┴╙├╔╔ 29 AND 29+128) MOVE THE CREATURE BY INCREASING OR DECREASING ITS PRINTING COLUMN POSITION. ╠╓ CONTROLS WHAT WE DO. ╘HE CREATURE HAS BUILT IN WIPERS IN IT: AS IT MOVES IT WIPES ITS OLD IMAGE OFF THE SCREEN.
  59.  
  60.      ╔NCIDENTALLY, THIS IS ONE OF MANY GOOD WAYS TO DESIGN AN OBJECT FOR MOVING: NOTE LINES 110-120. ╘HE SPACES ON EACH END ARE THE "WIPERS". ╘HE PENALTY IS THAT YOU CANNOT USE THE FIRST AND THE LAST COLUMNS OF THE SCREEN. ╬O PROBLEM FOR US, NOT ONE WORD REACHES 37 LETTERS.
  61.  
  62.      ╔F THE PLAYER PUSHES KEY NUMBER 1,  (┴╙├╔╔ 49) A SEPARATE ROUTINE HANDLES THE ARROW SHOOTING. ╔T IS IN LINES 330-340 WHERE THE SHOT IS EXECUTED, LITERALLY, BY PRINTING AN ARROW AND WIPING IT OFF AND SO ON UPWARDS. ╘HERE IS MORE TO DO, THE LETTER HAS TO BE DELIVERED TO THE TOP OF THE SCREEN. ╘HAT IS CODED IN LINE 360. ╫E ACTUALLY FAKE THE DELIVERY: AN ENTIRE SECTION OF THE WORD THAT HAS BEEN SOLVED IS REPRINTED IN LINES 360-370. ╫E'RE DONE IF THE WORD MATCHES OR WE HAVE MOVED ALL ITS LETTERS. ╔F DONE, WE SET A FLAG ╧╦ TO TRUE. ╔F WE RAN OUT OF LETTERS, FLAG ┼╬ IS SET. ╫E PRINT THE RESULTS AND RETURN TO THE MAIN LOOP.
  63.  
  64.      ╚ERE, IF THE END HAS BEEN REACHED, WE EXIT THE 230-290 LOOP AND GO BACK TO THE BEGINNING FOR MORE WORDS. ╔F ╟ IS PRESSED (┴╙├╔╔ 71) IT MEANS THE USER IS GIVING UP ON THE WORD, WE LOOP BACK FOR MORE WORDS. ╔F ╤ (┴╙├╔╔ 81) IS PRESSED, WE QUIT.
  65.  
  66.      ╘HE STARTING POINT FOR ALL WORDS IS LINE 160 WHERE WE REPRINT THE SCREEN AND CONTINUE PLAYING WITH THE SAME OLD LIST, COUNTING ON THE COMPUTER TO SCRAMBLE DIFFERENTLY THIS TIME.
  67.  
  68. ***  ╨╥╧╩┼├╘╙  ***
  69.  
  70.      ┘OU CAN MAKE MANY IMPROVEMENTS TO THIS PROGRAM. ╚OW ABOUT KEEPING A SCORE?  ╔F YOU DO, YOU HAVE TO TREAT ╟ (GIVE UP) FAIRLY. ┘OU COULD FORCE A TIME LIMIT. ╚ERE, AGAIN, ╟ COMPLICATES MATTERS. ┘OU CAN DECIDE ON YOUR OWN STRATEGY, BUT IT HAS TO BE LOGICAL AND FIT THE WHOLE SCHEME OF SCORE-KEEPING.
  71.  
  72.      ╫HAT ABOUT CHECKING AND REJECTING A WORD AS SOON AS A CHOSEN LETTER IS OUT OF PLACE? ╚OW ABOUT PERMITTING TO CHANGE YOUR MIND? ┴GAIN, DECIDE HOW IT WILL REFLECT ON THE SCORE AND TIMEKEEPING. ╠ACK OF THESE FEATURES, CURRENTLY, CAN WELL BE CONSIDERED LIMITATIONS OF THE PROGRAM AND OUGHT TO BE ADDRESSED TO IMPROVE IT BEYOND ITS RATHER BARE-BONES CURRENT PERFORMANCE.
  73.  
  74.      ╙OME ARTISTIC ELABORATIONS ARE IN PLACE: YOU COULD ADD SOUND TO THE SHOOTING ARROW. ╙OUND COULD BE ADDED AS A FEEDBACK TO THE USER IF THEY PRESS A WRONG KEY. ┘OU COULD DRESS UP THE SCREEN INTO A VERY NICE DISPLAY. ╘HE LETTER-COLLECTION SECTION COULD STAND SOME WORK, IT LOOKS UNNEAT THERE IN THE CORNER. ┬OTH WORDS SHOULD BE CENTERED. ├AREFUL HERE, ├ IS WHAT CONTROLS THE CREATURE'S POSITION AS WELL AS THE LETTER-HITS. ─ON'T LET THEM GET UNSYNCHRONIZED!
  75.  
  76.      ┘OU CAN CERTAINLY ADD LOTS OF COLOR. ╔N FACT, THE CREATOR OF THE CREATURE AND ALL ITS MOVEMENTS TELLS ME IT MUST BE BLUE. ╠IGHT BLUE, IN FACT. ╞EATURES OF THIS NATURE ARE OMITTED ON PURPOSE - IT WILL SAVE YOU TYPING AND GIVE YOU A CHANCE TO PLAY WITH REFINEMENTS ON A PROGRAM THAT HAS BEEN DEBUGGED AS FAR AS ITS MAIN LOGIC IS CONCERNED.
  77.